package util;

/**
 * @author 石小俊
 * 参数处理工具类
 */
public class ParameterUtil {

    /**
     * 通过默认分隔符(逗号)将数组中的元素拼接成字符串
     * @param arr
     * @return
     */
    public static String arrayToString(String[] arr) {
        return arrayToString(arr, ",");
    }

    /**
     * 通过指定的分隔符将数组中的元素拼接成字符串
     * @param arr      需要转换的数组
     * @param separate 分隔符
     * @return
     */
    public static String arrayToString(String[] arr, String separate) {
        if (arr != null) {
            StringBuffer buffer = new StringBuffer();
            for (String s : arr) {
                buffer.append(s + separate);
            }
            // 拼接后的字符串末尾会多出一个分隔符
            // 可以通过截取字符串的方式截取掉最后一个分隔符
            return buffer.substring(0, buffer.length() - 1);
        }
        return null;
    }

    /**
     * 将hobbies通过逗号分隔成数组,判断数组元素中是否包含hobby选项
     * @param hobbies
     * @param hobby
     * @return
     */
    public static String checkHobby(String hobbies, String hobby) {
        if(!ParameterUtil.isNull(hobbies)){
            // 由于hobbies是一个通过逗号将数组元素拼接成的字符
            // 因此,此时可以通过逗号分隔,将hobbies还原成数组
            String[] arr = hobbies.split(",");
            // 判断数组中是否包含指定元素hobby
            for(String s : arr){
               if(s.equals(hobby)){
                   // 如果包含,说明需要选中,返回checked
                   return "checked";
               }
            }
        }
        return "";
    }


    public static boolean isNull(String s) {
        return null == s || "".equals(s);
    }
}
